import type { MarketingProduct, Product } from '@/api/marketing-management';

export type GiveProduct = { productName: string; productGiveId: number };
export type ReferralProduct = {
  uuid: string;
  /** 商品类型 1-虚拟币；2-会员；4-短剧解锁 */
  productType: 1 | 2 | 4;
  /** 赠送商品类型 0-无赠送；1-虚拟币；2-会员 */
  giveProductType: 0 | 1 | 2;
  /** 商品名称 */
  product: Product | undefined;
  /** 赠送商品名称 */
  giveProduct: GiveProduct | undefined;
  /** 推荐标签 */
  recommendTags: string;
  /** 商品营销信息  */
  marketingDesc: string;
  /** 商品-营销关联id */
  productMarketingId?: number | null;
};

export type $EditShowData = {
  /** 操作 */
  action: 'edit';
  /** 模板类型 */
  templateType: 1 | 2 | 4;
  /** 商品 */
  referralProduct: MarketingProduct;
  /** 已添加的解锁商品的数量 */
  addUnlockAllProductNumb: number;
  /** 审核后的回调 */
  editCallBack?: (data: MarketingProduct) => void;
};

export type $AddShowData = {
  /** 操作 */
  action: 'add';
  /** 模板类型 */
  templateType: 1 | 2 | 4;
  /** 已添加的解锁商品的数量 */
  addUnlockAllProductNumb: number;
  /** 审核后的回调 */
  addCallBack?: (data: MarketingProduct) => void;
};
export type $ShowData = $AddShowData | $EditShowData;
